package com.seedwill.common.converter;

import org.apache.commons.beanutils.Converter;

import com.seedwill.common.util.DateTimeHelper;

public class TimestampConverter implements Converter {
//	Field[] flds = entity.getSchema().getHostType().getDeclaredFields();
//	Map paraMap = action.getRequest().getParameterMap();
//	for(int i=0; i<flds.length; i++){
//		String propName = flds[i].getName();
//		if(paraMap.containsKey(propName)){
//			OgnlHelper.pushValue(orgValue, propName, converterTo(action.getRequest().getParameter(propName), flds[i].getType()));
//		}
//		
//	}
	//orgValue.getClass().getFields()[0].;
	
//	/**
//	 * @param parameter
//	 * @param type
//	 * @return
//	 */
//	private Object converterTo(String parameter, Class type) {
//		//String, Long, Integer, Date, Timestamp, BigDecimal, Double
//		//java.sql.Timestamp
//       Object dest = null;
//		if(type.getName().equals(String.class.getName())){
//			
//		}else if(type.getName().equals(Long.class.getName())){
//			dest = Long.parseLong(parameter);
//		}else if(type.getName().equals(Integer.class.getName())){
//			dest = Integer.parseInt(parameter);
//		}else if(type.getName().equals(java.util.Date.class.getName())){
//			dest = DateTimeHelper.parseAsDate(parameter);
//		}else if(type.getName().equals(java.sql.Date.class.getName())){
//			dest = DateTimeHelper.parseAsDate(parameter);
//		}else if(type.getName().equals(java.util.Calendar.class.getName())){
//			dest = DateTimeHelper.parseAsCalendar(parameter);
//		}else if(type.getName().equals(java.math.BigDecimal.class.getName())){
//			dest = new java.math.BigDecimal(Double.parseDouble(parameter));
//		}else if(type.getName().equals(Double.class.getName())){
//			dest = Double.parseDouble(parameter);
//		}else if(type.getName().equals(java.sql.Timestamp.class.getName())){
//			dest = DateTimeHelper.parseStrAsTimestamp(parameter);
//		}else{
//			throw new RuntimeException(" unsupported type["+type.getName()+"] for convert");
//		}
//		return dest;
//	}
	
	
	public Object convert(Class type, Object value) {
		Object dest = DateTimeHelper.parseStrAsTimestamp((String) value);
		return dest;
	}

}
